﻿using System.Xml.Serialization;

namespace Toybox.NicoSharp.Video
{
  partial class ThumbInfo
  {

    public class Thumb
    {
      /// <summary>
      /// 動画ID
      /// </summary>
      public string video_id;

      /// <summary>
      /// 動画タイトル
      /// </summary>
      public string title;

      /// <summary>
      /// 動画の説明
      /// </summary>
      public string description;

      /// <summary>
      /// サムネイルのURL
      /// </summary>
      public string thumbnail_url;

      /// <summary>
      /// 投稿日時
      /// </summary>
      public string first_retrieve;

      /// <summary>
      /// 動画の長さ
      /// </summary>
      public string length;

      /// <summary>
      /// 動画の種類
      /// </summary>
      public string movie_type;

      /// <summary>
      /// 動画サイズ
      /// </summary>
      public int size_high;

      /// <summary>
      /// 動画サイズ
      /// </summary>
      public int size_low;

      /// <summary>
      /// 再生数
      /// </summary>
      public int view_counter;

      /// <summary>
      /// コメント数
      /// </summary>
      public int comment_num;

      /// <summary>
      /// マイリスト数
      /// </summary>
      public int mylist_counter;

      /// <summary>
      /// 最後のコメント
      /// </summary>
      public string last_res_body;

      /// <summary>
      /// 動画のURL
      /// </summary>
      public string watch_url;

      /// <summary>
      /// 
      /// </summary>
      public string thumb_type;

      /// <summary>
      /// 外部埋め込みの可否
      /// </summary>
      public bool embeddable;

      /// <summary>
      /// 生放送で再生の可否（出来ない場合True）
      /// </summary>
      public bool no_live_play;

      [XmlElement]
      public Tags[] tags;

      /// <summary>
      /// 投稿者ID
      /// </summary>
      public string user_id;
    }

		/// <summary>
		/// タグクラス
		/// </summary>
		public class Tags
		{
			/// <summary>
			/// ドメイン（国）
			/// </summary>
			[XmlAttribute]
			public string domain;

			/// <summary>
			/// タグ配列
			/// </summary>
			[XmlElement]
			public Tag[] tag;
		}

		/// <summary>
		/// タグ（単体）クラス
		/// </summary>
		public class Tag
		{
			/// <summary>
			/// カテゴリ
			/// </summary>
			[XmlAttribute]
			public bool category;

			/// <summary>
			/// ロック
			/// </summary>
			[XmlAttribute(AttributeName = "lock")]
			public bool taglock = false;

			/// <summary>
			/// タグの内容
			/// </summary>
			[XmlText]
			public string text;
		}

  }
}